/**
 * 
 */
package it.agm.fanta.activity.fragment;

import it.agm.fanta.FantaserviceApp;
import it.agm.fanta.activity.LiveActivity;
import it.agm.fanta.activity.MainActivity;
import it.agm.fanta.exception.ConnectionException;
import it.agm.fanta.R;
import android.app.Fragment;
import android.content.Intent;

/**
 * @author alberto
 *
 */
public class FragmentSessionFactory {

	/**
	 * Metodo che si occupa di effettuare lo switch sul testo del menu e recuperare il fragment da associare
	 * @param textMenuItem test della voce del NavigationDrawer a cui associare il Fragment
	 * @return Fragment da visualizzare
	 * @throws ConnectionException 
	 */
	public static Fragment getFragmentById(String textMenuItem) throws ConnectionException{
		
		Fragment fragment = null;
		if(FantaserviceApp.getAppContext() == null){
			throw new ConnectionException("ApplocationContext NULL ");
		}
//		if("".equals(textMenuItem) || textMenuItem == null){
//			throw new ParameterException("Nessuna voce di Menu selezionata ");
//		}
		if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_classifica).equals(textMenuItem)){
			if (FantaserviceApp.classificaFragment==null){
				FantaserviceApp.classificaFragment = new ClassificaFragment();
			}
			fragment = FantaserviceApp.classificaFragment;
		}else if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_calendario).equals(textMenuItem)){
			if (FantaserviceApp.calendarioFragment==null){
				FantaserviceApp.calendarioFragment = new CalendarioFragment();
			}
			fragment = FantaserviceApp.calendarioFragment;
		}else if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_classifica_marcatori).equals(textMenuItem)){
			if (FantaserviceApp.classificaMarcatoriFragment==null){
				FantaserviceApp.classificaMarcatoriFragment = new ClassificaMarcatoriFragment();
			}
			fragment = FantaserviceApp.classificaMarcatoriFragment;
		}else if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_rosa).equals(textMenuItem)){
			if (FantaserviceApp.rosaFragment==null){
				FantaserviceApp.rosaFragment = new RosaFragment();
			}
			fragment = FantaserviceApp.rosaFragment;
		}else if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_formazione_read).equals(textMenuItem)){
			if (FantaserviceApp.formazioneReadFragment==null){
				FantaserviceApp.formazioneReadFragment = new FormazioneReadFragment();
			}
			FantaserviceApp.formazioneReadFragment.caricaLista();
			fragment = FantaserviceApp.formazioneReadFragment;
		}else if(FantaserviceApp.getAppContext().getResources().getText(R.string.action_live).equals(textMenuItem)){
			
			fragment = new HomeFragment();
		}else{
			fragment = new HomeFragment();
		}	
		FantaserviceApp.partitaGiocata = false; 	
		return fragment;
	}
}
